Skip to content

feat(ogar-render-askama): W2/W3 fieldview — the addressed desktop surface#207

Merged
AdaWorldAPI merged 1 commit into
mainfrom
claude/ogar-a2ui-transcoding-b7xzrn
Jul 14, 2026
Merged

feat(ogar-render-askama): W2/W3 fieldview — the addressed desktop surface#207
AdaWorldAPI merged 1 commit into
mainfrom
claude/ogar-a2ui-transcoding-b7xzrn

Conversation

@AdaWorldAPI

Copy link
Copy Markdown
Owner

What

Adds ogar-render-askama::field_view — the render half of the A2UI
screen-addressing charter (docs/A2UI-SCREEN-ADDRESSING-PROPOSAL.md, C1.2):
a WideFieldMask-projected ClassView instance renders as an addressed
surface
rather than a rasterized bitmap. Don't push pixels — address the
screen.

Surface

Tests

5 new tests (addressed render incl. a wide position ≥ 64, XSS regression,
empty-action nav omit, both projection bridges). 61 crate tests green,
clippy clean.

Consumer

Consumed by the a2ui-rs W2 a2ui-server tier (RBAC-project WideFieldMask ∩ roleNodeDelta down + this fieldview render; ActionInvoke up by ordinal;
ogar-encryption sealed transport). Ledger: docs/DISCOVERY-MAP.md
D-A2UI-SCREEN-ADDRESSING (status appended in this PR).

🤖 Generated with Claude Code

https://claude.ai/code/session_01UZmHUePVbVXjHJWoBmABiZ


Generated by Claude Code

…face

Add ogar-render-askama::field_view — the render half of the A2UI screen-
addressing charter (docs/A2UI-SCREEN-ADDRESSING-PROPOSAL.md, C1.2): a
WideFieldMask-projected ClassView instance renders as an ADDRESSED surface
rather than a rasterized bitmap.

- render_field_view(class_id, concept, key_hex, title, fields, actions) +
  templates/dispatch/field_view.askama.
- Every field carries data-field-pos = its WideFieldMask position (its layout
  address); every action carries data-action-ordinal = its ActionDef address
  (trap T2 — no inline handler is representable). The node key addresses the
  whole surface (data-key).
- from_value_rows / from_render_rows: direct ClassView-projection bridges
  (lance_graph_contract::class_view::{ValueRow,RenderRow} -> FieldView).
- escape="html", no |safe hatch: the XSS class the list/detail kits fixed
  under codex P1 (#83/#84) cannot arise on a fieldview.

5 new tests (addressed render incl. a wide position >= 64, XSS regression,
empty-action nav omit, both projection bridges); 61 crate tests green,
clippy clean. Consumed by the a2ui-rs W2 a2ui-server tier.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UZmHUePVbVXjHJWoBmABiZ
@AdaWorldAPI
AdaWorldAPI merged commit df7331e into main Jul 14, 2026
1 check passed
@cursor

cursor Bot commented Jul 14, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_112b6fc4-2e32-448a-a4c6-11e49b5a5a90)

AdaWorldAPI pushed a commit that referenced this pull request Jul 16, 2026
…ial verify pass

Rewrites the doc-layer W4 spec against the as-built A2UI screen-addressing
wave (#204-#207) and the a2ui-rs consumer (#3/#4/#9/#11), then applies a
17-finding adversarial verify pass (3 refuter lenses: citations, canon,
layer boundaries). Substantive changes over v1:

- W4-0 (new): wave-namespace rule — a2ui owns its own W0-W5 (its W4 =
  P-REHOST); this wave is written doc-W4 in all board/PR text.
- Headline generalized per amendment A3: one ClassView x WideFieldMask
  template projection — re-issue as PDF (executor leg) or serve as a
  living addressed screen (a2ui session tier).
- reconstruct_document stays produces=pdf_bytes, deliberately scoped to
  artifact legs; the living screen is session-tier project_node ->
  NodeDelta frames, never an ActionDef output.
- C1.4 mask discipline inherited verbatim (RBAC by projection fail-closed
  on the re-issue path, retype-in-place, zero-extension, sentinel ban,
  permit-all identity consumed not re-decided).
- Ordinal-stability wire invariant for the three ActionDefs (T2).
- Four-leg renderer table with honest per-leg as-built status; DocRenderer
  trait = three impls (byte artifacts), a2ui = fourth family member at the
  session tier; deviation D-1 numbered (askama leg = compile-time callee,
  charter A5 runtime-bound annotation revised on stated factual basis).
- A1 dep list restored to ratified A5 (ogar-vocab + ogar-doc-ir; codebook
  membrane returned to the consumer side of the BBB).
- Page-register carving named (never-widen canon): number = one u8:u8
  typed pair; native w/h out-of-line provenance.
- Dependency ledger: value-slab render path, permit-all decision,
  HTML->PDF step — named so the council can't assume unbuilt legs whole.
- P-TEMPLATE-MASK falsifier (new), split cross-repo over one shared
  fixture (dependency-direction honest).

Mints NOTHING: 0x080A/0x080B stay operator-gated (D-OGAR-DOC-LAYER ledger;
charter section D3) and land WITH the council-verified build.

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants